/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package edu.upn.sigemfi.rec.bc;

import edu.upn.sigemfi.rec.be.AccionCobranza;
import edu.upn.sigemfi.rec.be.AccionJudicial;
import edu.upn.sigemfi.rec.be.AccionPrejudicial;
import edu.upn.sigemfi.rec.be.Adjudicacion;
import edu.upn.sigemfi.rec.be.CargoComision;
import edu.upn.sigemfi.rec.be.ComprobacionCliente;
import edu.upn.sigemfi.rec.be.CompromisoPago;
import edu.upn.sigemfi.rec.be.Condonacion;
import edu.upn.sigemfi.rec.be.Notificacion;
import edu.upn.sigemfi.rec.be.ProcesoCobranza;
import edu.upn.sigemfi.rec.be.ProposicionCastigo;
import edu.upn.sigemfi.rec.be.Refinanciamiento;
import java.util.List;
import javax.ejb.Local;

/**
 *
 * @author Diego
 */
@Local
public interface ProcesoCobranzaFacadeLocal {

    void create(ProcesoCobranza procesoCobranza);

    void edit(ProcesoCobranza procesoCobranza);

    void remove(ProcesoCobranza procesoCobranza);

    ProcesoCobranza find(Object id);

    List<ProcesoCobranza> findAll();

    List<AccionCobranza> findAllCobranzas();

    List<AccionJudicial> findAllJudiciales();

    List<AccionPrejudicial> findAllPrejudiciales();

    List<Adjudicacion> findAllAdjudicaciones();

    List<CompromisoPago> findAllCompromisos();

    List<Condonacion> findAllCondonaciones();

    List<ProposicionCastigo> findAllProposicionCastigos();

    List<Refinanciamiento> findAllRefinanciamientos();

    List<ComprobacionCliente> findAllComprobaciones();

    List<Notificacion> findAllNotificaciones();

    List<CargoComision> findAllCargosComision();

    CargoComision findCargoComision(Object id);

    Notificacion findNotificacion(Object id);

    ComprobacionCliente findComprobacion(Object id);

    AccionCobranza findCobranza(Object id);

    AccionJudicial findJudicial(Object id);

    AccionPrejudicial findPrejudicial(Object id);

    Adjudicacion findAdjudicacion(Object id);

    CompromisoPago findCompromisoPago(Object id);

    Condonacion findCondonacion(Object id);

    ProposicionCastigo findProposicionCastigo(Object id);

    List<ProposicionCastigo> findAllProposicionCastigoPorCredito(Long credito);
    List<AccionCobranza> findAllAccionesCobranzaPorEstado(Long credito, String estado);

    List<Notificacion> findAllNotificacionesPorCredito(Long credito);

    Refinanciamiento findRefinanciamiento(Object id);

    List<Adjudicacion> findAllAdjudicacionesPorCredito(Long credito);

    List<ComprobacionCliente> findAllComprobacionesPorCredito(Long credito);

    List<CompromisoPago> findAllCompromisoPagoPorCredito(Long credito);

    void createAdjudicacion(edu.upn.sigemfi.rec.be.Adjudicacion adj);

    void editAdjudicacion(edu.upn.sigemfi.rec.be.Adjudicacion adj);

    void removeAdjudicacion(edu.upn.sigemfi.rec.be.Adjudicacion adj);
}
